home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC World 2008 April
/
PCWorld_2008-04_cd.bin
/
komercni software
/
miton
/
SystemMechanic7Pro.exe
/
{app}
/
smhtml.dll
/
1033
/
HTML
/
PROBLEMWIDGET.JS
< prev
next >
Wrap
Text File
|
2008-01-24
|
13KB
|
489 lines
//render custom widgets on page load
function ProblemPageOnLoad()
{
var c = new CheckBox();
c.ID = "chkAll";
c.OnClickCustomEvent = "_ProblemSelectAll(_IsProblemWidgetCheckBoxChecked('chkAll'));";
Get('divChkAll').innerHTML = c.Render();
var b = new ActionButton()
b.ID = "btnButtonRepairAll";
b.Type = ACTION_BUTTON_CUSTOM;
b.Text = btLOC_RepairAll;
b.Event = "external.DoOnRepairAllClicked();";
b.Class = "button_highlighted";
b.width= btLOC_RepairAll_width;
b.FloatClass = "floatR";
Get('divButtonRepairAll').innerHTML = b.Render();
var b = new ActionButton()
b.ID = "btnButtonRepairSelected";
b.Type = ACTION_BUTTON_CUSTOM;
b.Text = btLOC_RepairSelected;
b.Event = "external.DoOnRepairSelectedClicked();";
b.FloatClass = "floatR";
b.Width = btLOC_RepairSelected_width;
Get('divButtonRepairSelected').innerHTML = b.Render();
var b = new ActionButton()
b.ID = "btnAnalyzeNowUnKnownBox";
b.Type = ACTION_BUTTON_CUSTOM_DROPDOWN;
b.Text = btLOC_AnalyzeNow;
b.Event = "external.DoOnProblemAnalyzeNow()";
b.Event2 = "_ProblemWidgetAnalyzeNowDrowMenu('"+ b.ID +"');";
b.FloatClass = "floatR";
b.Width = btLOC_AnalyzeNow_width;
Get('spAnalyzeNowUnKnownBox').innerHTML = b.Render();
var b = new ActionButton()
b.ID = "btnBackToOverview";
b.Type = ACTION_BUTTON_CUSTOM;
b.Text = btLOC_BackToOverview;
b.Event = "external.DoOnBackToOverviewClick()";
b.FloatClass = "floatR";
b.Width = btLOC_BackToOverview_width;
Get('spBackToOverview').innerHTML = b.Render();
}
// Call it when page load
AddLoadEvent(ProblemPageOnLoad);
var _ArrayProblemCheckbox = new Array();
var _BackUp = "0";
var _Defrag = "1";
var _Enable = "2";
var _Optimize = "3";
var _Remove = "4";
var _Repair = "5";
var _ScanNow = "6";
var _Schedule = "7";
var _Start = "8";
var _MoreInfo = "9";
function _GetProblemWidgetDefaultActionButton(Action, IsDropDown)
{
var dd = IsDropDown || false;
var b = new ActionButton();
b.Type = dd ? ACTION_BUTTON_CUSTOM_DROPDOWN : ACTION_BUTTON_CUSTOM;
b.Width = 73;
b.FloatClass = "floatR";
switch ( Action )
{
case _BackUp :
b.Text = btLOC_BackUP;
b.Width = btLOC_problem_actions_width;
return b;
case _Defrag :
b.Text = btLOC_Drfrag;
b.Width = btLOC_problem_actions_width;
return b;
case _Enable :
b.Text = btLOC_Enable;
b.Width = btLOC_problem_actions_width;
return b;
case _Optimize :
b.Text = btLOC_Optimize;
b.Width = btLOC_problem_actions_width;
return b;
case _Remove :
b.Text =btLOC_Remove;
b.Width =btLOC_problem_actions_width;
return b;
case _Repair :
b.Text = btLOC_Repair;
b.Width = btLOC_problem_actions_width;
return b;
case _ScanNow :
b.Text = btLOC_ScanNow;
b.Width = btLOC_problem_actions_width;
return b;
case _Schedule :
b.Text = btLOC_Schedule;
b.Width = btLOC_problem_actions_width;
return b;
case _Start :
b.Text = btLOC_Start;
b.Width = btLOC_problem_actions_width;
return b;
case _MoreInfo :
b.Text = btLOC_MoreInfo;
b.Width = btLOC_problem_actions_width;
return b;
}
}
function ProblemWidgetTable(id)
{
this.tbl = new DataTable();
this.tbl.ID = id;
this.tbl.Cellspacing = "0";
this.tbl.Cellpadding = "0";
this.tbl.Width = "100%";
this.Add = __ProblemWidgetTableAdd;
this.Check = __ProblemWidgetTableCheck;
// obj : problemwidget object
function __ProblemWidgetTableAdd( obj)
{
if(( obj.IsCritical) && (this.tbl.Count()>0))
this.tbl.AddWithKeyByIndex(obj.ID,0, obj.Render() );
else
this.tbl.AddWithKey(obj.ID,obj.Render() );
}
//value :bool
function __ProblemWidgetTableCheck(value)
{
_SetProblemWidgetCheckBoxesState( value );
}
}
function ProblemWidget( id )
{
this.ID = id;
this.Class = "module_items list";
this.IsChecked = false;
this.IsCritical = false;
this.IsCriticalSection = false;
this.DefaultAction = _Enable;
this.lblHeader = new Label();
this.lblHeader.ID = "header_" + id;
this.lblHeader.Text = "Header";
this.lblHeader.Class = "module_item_heading";
this.lblDetails = new Label();
this.lblDetails.ID = "details_" + id;
this.lblDetails.Text = "Details";
this.lblDetails.Class = "description";
this.chk = new CheckBox();
this.chk.ID = "chk_" + id;
this.Render = __ProblemWidgetRender;
this.IsRendered = __ProblemWidgetIsRendered;
this.Select = __ProblemWidgetSelect;
function __ProblemWidgetIsRendered()
{
return Get( this.ID ) == null ? false : true;
}
function __ProblemWidgetRender()
{
var content = "";
var checkvalue ="";
var tdCheckboxClass = "selection_box";
var tdDetailsClass = "selection_box_text";
if(this.IsChecked)
{
tdCheckboxClass = "selection_box_darkblue";
tdDetailsClass = "bg_selected_lightblue";
checkvalue = "checked";
this.chk.State = _CHECKBOX_CHECKED;
}
content += "<table id=\"" + this.ID + "\" cellspacing=0 cellpadding=0 border=0 width=100% class=\""+ this.Class +"\">";
content += "<tr id=\"td_chk_" + this.ID + "\" class=\"" + tdDetailsClass + "\" >";
content += "<td width=\"20px\" class=\"checkbox_col\" valign=\"middle\" >";
if(!this.IsCriticalSection)
{
this.chk.OnClickCustomEvent = "_ProblemWidgetCheckBoxOnclick('" + this.ID +"', _IsProblemWidgetCheckBoxChecked('chk_" + this.ID + "'));";
content += this.chk.Render();
}
else
content += " ";
content += "</td>";
content +="<td id=\"td_text_" + this.ID + "\" class=\"" + tdDetailsClass + "\" >";
if(this.IsCritical)
this.lblHeader.Class = this.lblHeader.Class + " red";
content += this.lblHeader.Render();
content += this.lblDetails.Render();
content +="</td>\n\n";
//var button = _GetProblemWidgetDefaultActionButton(this.DefaultAction, !this.IsCriticalSection);
var button = _GetProblemWidgetDefaultActionButton(this.DefaultAction, true);
button.ID = "btn_" + this.ID ;
if(!this.IsCriticalSection)
{
content +="\n\t<td width=\"100x\" id=\"td_button_" + this.ID + "\" valign=top class=\"" + tdDetailsClass + "\">\n";
button.Event = "external.DoOnProblemButtonClicked('"+ this.ID +"');";
button.Event2 = "_ProblemWidgetDrowMenu('"+ this.ID+"','btn_"+ this.ID +"');";
content += button.Render();
_ArrayProblemCheckbox[_ArrayProblemCheckbox.length] = this.ID;
}
else
{
content +="\n\t<td width=\"100x\" id=\"td_button_" + this.ID + "\" valign=top class=\"selection_box_text\">\n";
button.Event = "external.DoOnProblemButtonClicked('"+ this.ID +"');";
button.Event2 = "_ProblemWidgetDrowMenu('"+ this.ID+"','btn_"+ this.ID +"');";
//button.Event = "external.DoOnProblemButtonClicked('" + this.ID + "');";
content += button.Render();
}
content +="\n\t</td>\n\n";
content += "</tr>";
content += "</table>";
return content;
}
//value : bool
function __ProblemWidgetSelect(value)
{
if(this.IsRendered())
{
var tdCheckboxClass = "selection_box";
var tdDetailsClass = "";
if(value)
{
tdCheckboxClass = "bg_selected_lightblue";
tdDetailsClass = "bg_selected_lightblue";
}
var td1 = Get("td_chk_" + this.ID) ;
var td2 = Get("td_text_" + this.ID) ;
var td3 = Get("td_button_" + this.ID) ;
if( td1!=null)
td1.className = tdCheckboxClass;
if( td2!=null)
td2.className = tdDetailsClass;
if( td3!=null)
td3.className = tdDetailsClass;
}
}
}
//************************* Problem Internal functions ****************************************************
function _AddProblemToList(ID, IsCritical, IsChecked, HeaderText, DetailText, DefaultAction, IsCriticalSection)
{
var p = new ProblemWidget(ID);
p.IsCritical = IsCritical;
p.IsChecked = IsChecked;
p.lblHeader.Text = URLDecode(HeaderText);
p.lblDetails.Text = URLDecode(DetailText);
p.DefaultAction = DefaultAction;
p.IsCriticalSection = IsCriticalSection;
if(!IsCriticalSection)
{
var t = new ProblemWidgetTable('proTable');
t.Add( p );
if( Get( t.tbl._ClientID() ) == null )
Get("divProblems").innerHTML += t.tbl.Render();
}else
{
var t = new ProblemWidgetTable('warTable');
t.Add( p );
if( Get( t.tbl._ClientID() ) == null )
Get("divWarnings").innerHTML += t.tbl.Render();
}
_SetProblemCount();
_GetAndSetCheckBoxState();
}
function _SetProblemCount()
{
var t1 = new ProblemWidgetTable('proTable');
var t2 = new ProblemWidgetTable('warTable');
var problemcout = t1.tbl.Count();
var warningcout = t2.tbl.Count();
SetDisplayWidget('tblWarningsHeader', (warningcout>0));
SetDisplayWidget('tblProblemsHeader', (problemcout>0));
SetDisplayWidget('divProblemBallon', (problemcout>0), true);
}
function _ProblemSelectAll(Value)
{
var t1 = new ProblemWidgetTable('proTable');
t1.Check( Value );
// var t2 = new ProblemWidgetTable('warTable');
// t2.Check( Value );
}
function _ProblemWidgetCheckBoxOnclick( id, value)
{
var p = new ProblemWidget(id);
p.Select(value);
try
{
external.DoOnProblemCheckboxClicked( id, value );
}catch(e)
{
//alert(id + " - " + value);
}
_GetAndSetCheckBoxState();
}
function _GetAndSetCheckBoxState()
{
var x = 0;
var checked = false;
var unchecked = false;
//var chk = null;
var passingvalue = 1;
for (var x = 0; x < _ArrayProblemCheckbox.length; x++)
{
var c = new CheckBox();
c.ID = "chk_" + _ArrayProblemCheckbox[x];
if( c.IsRendered())
{
if(c.IsChecked())
checked = true;
else
unchecked = true;
}
}
if((!checked) && (unchecked)) passingvalue = 1;
if((checked) && (!unchecked)) passingvalue = 2;
if((checked) && (unchecked)) passingvalue = 3;
_SetCheckBoxState(passingvalue);
//alert(passingvalue);
}
function _SetCheckBoxState(state)
{
var c = new CheckBox();
c.ID = "chkAll";
switch(state)
{
case 1:
c.SetState(_CHECKBOX_UNCHECKED);
break;
case 2:
c.SetState(_CHECKBOX_CHECKED);
break;
case 3:
c.SetState(_CHECKBOX_MIX);
break;
}
}
function _SetProblemWidgetCheckBoxesState( state )
{
for (var x = 0; x < _ArrayProblemCheckbox.length; x++)
{
var c = new CheckBox();
c.ID = "chk_" + _ArrayProblemCheckbox[x];
if( c.IsRendered())
{
c.Check(state);
_ProblemWidgetCheckBoxOnclick( _ArrayProblemCheckbox[x], state);
}
}
}
function _ProblemWidgetDrowMenu( objID, imgID )
{
var x = findPosX( imgID );
var y = findPosY( imgID ) + 22 - GetScrollTop();
try
{
external.DoOnProblemDropDownClicked( objID, x, y );
}catch(e)
{
moveDiv("move", x, y);
}
}
function _ProblemWidgetAnalyzeNowDrowMenu( imgID )
{
var x = findPosX( imgID );
var y = findPosY( imgID ) + 22 - GetScrollTop();
try
{
external.DoOnProblemAnalyzeNowDropDownClicked(x, y );
}catch(e)
{
moveDiv("move", x, y);
}
}
function _IsProblemWidgetCheckBoxChecked(id)
{
var c = new CheckBox();
c.ID = id;
var s = c.GetState();
if(( s == 0) || ( s == 4) )
return true;
else
return false;
//return c.IsChecked();
}
function SetLanguage (language){
Get("aLOC_Configure1").innerHTML= aLOC_Configure1;
Get("aLOC_Configure2").innerHTML= aLOC_Configure2;
Get("aLOC_Configure3").innerHTML= aLOC_Configure3;
Get("pLOC_AnalyzeRequired").innerHTML= pLOC_AnalyzeRequired;
Get("pLOC_AnalyzeRequiredDescription").innerHTML= pLOC_AnalyzeRequiredDescription;
Get("pLOC_NoProblemsFound").innerHTML= pLOC_NoProblemsFound;
Get("pLOC_NoProblemsFoundDescription").innerHTML= pLOC_NoProblemsFoundDescription;
}